1. Field of the Invention
This invention relates generally to copying of data transactions and, more particularly, to copying data write updates from a primary location to a remote location.
2. Description of the Related Art
Remote copying of data is an integral part of disaster recovery for protecting critical data from loss and providing continuous data availability. In a disaster recovery support system, data write updates to a primary or central data store are reproduced at a secondary, remote site. The remote site is typically located at a distance from the primary data store if protection from natural disasters is a concern, but may be adjacent to the primary site if equipment failure is the main concern. In the event of a failure at the primary data store, the remote site can take over all operations, including data write updates, with confidence that no data has been lost. Later, after repair, the primary data store can be restored to the condition of the remote site and can resume all operations, including data write operations.
Examples of disaster recovery systems are the Peer-to-Peer Remote Copy (PPRC) function of enterprise data storage systems from the International Business Machines Corporation (IBM Corp.) and the Symmetrix Remote Data Facility (SRDF) system from the EMC Corporation. Such remote copying functions are also referred to as real-time data shadowing, electronic vaulting, and data mirroring.
For remote copying in the context of data shadowing, typically same-sized blocks of data are sent from the primary data store to the remote data site. In this way, data write updates at the primary data store are reproduced at the remote site so as to permit reconstruction of the data, including reconstruction of the exact sequence of data write updates that took place at the primary data store. This reproducibility can be especially important, for example, in a banking system or other transaction log system. Thus, data write updates at the primary data store are collected and are periodically sent to the remote site in a remote copy operation.
There are synchronous and asynchronous forms of remote copy. The difference relates to when the host computer at the primary data store is informed of the completion of the data shadowing operation. In a synchronous remote copy operation, completion of a remote copy write request is indicated to the host computer only after the data has been written to both the primary data store and the data controller at the remote site. In an asynchronous remote copy operation, the completion of the write request is indicated as soon as the primary data store controller completes the write operation at the primary site. Thus, in an asynchronous remote copy operation, the primary data store controller does not wait for the remote site controller to complete its write operation; data shadowing at the remote site occurs asynchronously to the primary data store.
A key aspect of asynchronous remote copy is that updates at the remote site must be applied by the remote controller in the same order as they are applied by the primary data store controller, even though the primary controller does not wait for confirmation of the remote copy to ensure sequential updates. A key aspect of synchronous remote copy is that waiting for the remote copy confirmation carries with it a high response time penalty, which increases with the distance between the primary data store and the remote site. Because of its greater speed, the asynchronous form of remote copy has been getting increasingly greater interest.
The various types of remote copy can require enormous amounts of bandwidth over the data lines between the primary data store and the remote site controller. For example, if a primary data store controller can support 20,000 input/output (I/O) operations per second, and if 50% of these operations are write operations, then the controller can handle 10,000 write operations per second. If each write update involves 4 K bytes, then bandwidth of 40 MB per second is required between the primary controller and the remote site controller. This is a significant amount of bandwidth to provide, given currently available pricing for data lines. Even though asynchronous remote copy can speed up write updates, it does not decrease the amount of bandwidth required.
From the discussion above, it should be apparent that there is a need for a remote copy system that can provide quick data shadowing without requiring a great deal of expensive bandwidth. The present invention fulfills this need.